package com.xiangge.domain;

import java.util.Arrays;
import java.util.Scanner;

public class MyArrayUtilImpl extends MyArrayUtil{
    // 重写查询全部的方法
    @Override
    public void findAll(int[] arr) {
        System.out.println(Arrays.toString(arr));
    }

    // 重写查询位置的方法
    @Override
    public void findIndex(int[] arr) {
        int index = -1;
        for (int i = 0; i < arr.length; i++) {
            if (i < arr.length){
                index = i;
            }
            System.out.println("元素"+arr[i]+"的索引位置为"+index);
        }
    }

    // 重写反转数组的方法
    @Override
    public void rollBack(int[] arr) {
        for (int i = 0,j = arr.length-1; i <= j; i++, j--) {
            int temp = arr[i];
            arr[i] = arr[j];
            arr[j] = temp;
        }
        System.out.println(Arrays.toString(arr));
    }

    // 重写指定删除的方法
    @Override
    public void deleteIndex(int[] arr) {
        System.out.println("请输入要删除的元素位置的索引：");
        int index = new Scanner(System.in).nextInt();
        if (index < 0 || index >= arr.length){
            System.err.println("输入不合规！");
            return;
        }
        int[] newArr = new int[arr.length-1];
        for (int i = 0; i < index; i++) {
            newArr[i] = arr[i];
        }
        for (int j = index+1; j < arr.length; j++) {
            //newArr[j-1] = arr[j];
            newArr[index] = arr[index+1];
            index++;
        }
        System.out.println(Arrays.toString(newArr));
    }
}
